package com.niuke;

import java.util.Scanner;

/**
 * 53. 分积木
 * https://blog.csdn.net/m0_46181452/article/details/131667053 (题)
 * https://www.nowcoder.com/discuss/358210903748222976  (解)
 */
public class NiukeMoni53 {

    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);

        int n = Integer.parseInt(scanner.nextLine()); // 积木数量
        String[] input = scanner.nextLine().split(" ");
        int[] weights = new int[input.length]; // 积木重量
        for (int i = 0; i < input.length; i++) {
            weights[i] = Integer.parseInt(input[i]);
        }

        String result = getResult(weights);
        System.out.println(result);
    }

    private static String getResult(int[] arr) {
        if (arr.length == 0 || arr.length == 1 || (arr.length == 2 && arr[0] != arr[1])) {
            return "NO";
        }
        int min = arr[0];
        int sum = min;
        int temp = min;
        for (int i = 1; i < arr.length; i++) {
            sum += arr[i];
            min = min < arr[i] ? min : arr[i];
            temp ^= arr[i];
        }
        if (temp != 0) { // 所有积木的重量异或值为0，才能平分，因为 a^a=0，否则可以直接输出"NO"
            return "NO";
        } else { // 既然能平分，那就可以弟弟只分一个，而且重量是最小的那个，哥哥可以得到剩余所有的重量之和，也就是答案
            return String.valueOf(sum - min);
        }
    }

}
